/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.ee.cybertron.energon.daemon;

import com.ee.cybertron.energon.base.ServicioBase;
import com.ee.cybertron.energon.beans.BeanProviderWorkArea;
import com.ee.cybertron.energon.beans.SynchronizedMessage;
import com.ee.cybertron.energon.model.Mensaje;
import com.ee.cybertron.energon.util.Main;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author stevenziggiz
 */
public class DaemonMessage extends Thread {
    
    SynchronizedMessage synchronizedMessage;
    BeanProviderWorkArea beanProviderWorkArea;
    ServicioBase servicio;
    List<Mensaje> mensajesList;
    
    public DaemonMessage() {
        setDaemon(true);
        servicio = new ServicioBase();
        synchronizedMessage = (SynchronizedMessage) Main.obtenerVista("#{synchronizedMessage}");
        beanProviderWorkArea = (BeanProviderWorkArea) Main.obtenerVista("#{beanProviderWorkArea}");
    }
    
    @Override
    public void run() {
        while (true) {
            mensajesList = servicio.seleccionar(Mensaje.class);
            try {
                if (beanProviderWorkArea.isWelcome()) {
                    if (beanProviderWorkArea.getUserLogin().getIdProfile().getName().equals("manager")) {
                        synchronizedMessage.setMessageList(mensajesList);
                    }
                }
                this.sleep(11000);
            } catch (InterruptedException ex) {
                Logger.getLogger(DaemonMessage.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}
